home *** CD-ROM | disk | FTP | other *** search
- ; Static Name Aliases
- ;
- TITLE zz
- ; NAME zz.c
-
- .287
- _TEXT SEGMENT BYTE PUBLIC 'CODE'
- _TEXT ENDS
- _DATA SEGMENT WORD PUBLIC 'DATA'
- _DATA ENDS
- CONST SEGMENT WORD PUBLIC 'CONST'
- CONST ENDS
- _BSS SEGMENT WORD PUBLIC 'BSS'
- _BSS ENDS
- DGROUP GROUP CONST, _BSS, _DATA
- ASSUME CS: _TEXT, DS: DGROUP, SS: DGROUP, ES: DGROUP
- PUBLIC _tick, _setticker, _removeticker
- EXTRN _tic10:WORD
-
- _DATA SEGMENT
- _DATA ENDS
-
- _TEXT SEGMENT
-
- DSreg DW DGROUP
- Oldseg DW ?
- Oldofs DW ?
-
- PUBLIC _tick
- _tick PROC FAR
- push ds
- push ax
- mov ax,CS:[DSreg]
- push ax
- pop ds
- add DS:_tic10, 5 ; pc clock is 50 ms not 10 !!!
- pop ax
- pop ds
- iret
- _tick ENDP
-
- _setticker PROC NEAR
- push es
- push bx
- push ds
- mov ah,035h ; save old tick address
- mov al,01ch
- int 21h
- mov Oldseg,es
- mov Oldofs,bx
- push cs
- pop ds
- lea dx,_tick ; set new one alone
- mov ah,025h
- mov al,01ch
- int 21h
- pop ds
- pop bx
- pop es
- ret
- _setticker ENDP
-
- _removeticker PROC NEAR
- push dx
- push ds
- mov ds,Oldseg
- mov dx,Oldofs
- mov ah,025h
- mov al,01ch
- int 21h
- pop ds
- pop dx
- ret
- _removeticker ENDP
-
- _TEXT ENDS
- END